<?php

namespace app\common\util;

class ErrorCode
{
    public static function code($code, $text = '')
    {
        $returnCode = self::$errorCode[$code];
        if(empty($returnCode)){
            $returnCode = self::$errorCode["code_not_exist"];
        }
        if(strpos($returnCode['msg'], "%s") !== false && $text){
            $returnCode['msg'] = sprintf($returnCode['msg'], $text);
        }
        return $returnCode;
    }

    static $errorCode = [
        'success'               => ['code' => 0, 'msg' => '请求成功'],
        'fail'                  => ['code' => -1, 'msg' => '请求失败'],
        'request_error'         => ['code' => 100, 'msg' => '请求类型错误'],
        'params_error'          => ['code' => 101, 'msg' => '%s错误'],
        'params_not_exist'      => ['code' => 102, 'msg' => '%s不能为空'],
        'params_format'         => ['code' => 103, 'msg' => '%s格式错误'],
        'not_exist'             => ['code' => 104, 'msg' => '数据不存在'],
        'code_not_exist'        => ['code' => 111, 'msg' => '错误码不存在'],
        'account_error'         => ['code' => 200, 'msg' => '账号或密码错误'],
        'token_expire'          => ['code' => 201, 'msg' => '用户凭证无效或已过期'],
        'account_not_exist'     => ['code' => 202, 'msg' => '账号不存在'],
        'auth_fail'             => ['code' => 203, 'msg' => '无访问权限'],
        'account_disable'       => ['code' => 204, 'msg' => '账号已被禁用，请联系管理员'],
        'mobile_exist'          => ['code' => 311, 'msg' => '手机号已存在'],
        'email_exist'           => ['code' => 312, 'msg' => '邮箱已存在'],
        'qq_exist'              => ['code' => 313, 'msg' => 'qq已存在'],
        'param_exist'           => ['code' => 314, 'msg' => '%s已存在'],
        'openid_exist'          => ['code' => 313, 'msg' => 'openid已存在'],
        'no_bind'               => ['code' => 315, 'msg' => '%s'],
        'id_card_error'         => ['code' => 321, 'msg' => '身份证号错误'],
        'method_not_exist'      => ['code' => 401, 'msg' => '方法不存在'],
        'ip_token_error'        => ['code' => 402, 'msg' => 'Token不允许在不同IP里使用，请重新登录'],
        'config_not_exist'      => ['code' => 403, 'msg' => '%s配置数据不存在'],
        'mall_id_not_exist'     => ['code' => 423, 'msg' => '缺少商城ID参数mallId'],
        'try_error'             => ['code' => 404, 'msg' => '%s'],
        'customized'            => ['code' => 501, 'msg' => '%s'],
        'mall_expired'          => ['code' => 502, 'msg' => '商城已过有效期，请联系管理员'],
        'account_expired'       => ['code' => 503, 'msg' => '账号已过有效期，请联系管理员'],
    ];
}